/**
 * 
 */
package com.ubigate.CooknaviHA;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.util.Log;

/**
 * @author Zephyrus
 *
 */
public class CookingTimerService extends BroadcastReceiver {
	private static String TAG = "CookingTimerService";

//	private long mTime = 0;
//	
//	private Activity activity = null;
//	
//	public CookingTimerService() {
//		super();
//	}
//	public CookingTimerService(Activity activity) {
//		this.activity = activity;
//	}
//	
	/* (non-Javadoc)
	 * @see android.content.BroadcastReceiver#onReceive(android.content.Context, android.content.Intent)
	 */
	@Override
	public void onReceive(Context context, Intent intent) {
		// TODO Auto-generated method stub
		Log.d(TAG, "onReceive context : "+context.toString()+", intent :"+intent.toString());
		
		showNotification(context, android.R.drawable.ic_lock_idle_alarm, R.string.app_name, R.string.str_timeout);
	}


	private void showNotification(Context context, int statusBarIconID, int statusBarTextID, int detailedTextID) {
		Intent i = new Intent(context, TimerActivity.class );
		PendingIntent pi = PendingIntent.getActivity(context, 0, i, PendingIntent.FLAG_ONE_SHOT);

		CharSequence from = "쿡나비";
		CharSequence mesg = "요리 타이머가 종료 되었습니다.";
		
		Notification notif = new Notification(statusBarIconID, null, System.currentTimeMillis());
		notif.setLatestEventInfo(context, from, mesg, pi);
		notif.sound = Uri.parse("android.resource://com.ubigate.CooknaviHA/raw/alarm2");
		
		NotificationManager nm = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
		nm.notify(CooknaviApp.NOTIFICATION_ID, notif);
		
		// 상단의 스테이터스바를 제거하여 쿡나비 내부에서 브라우징 하는 경우 
		// 노티피케이션이 보이지 않음
		// 노티피케이션과 더불어 다이알로그 처리가 필요
		// 갤럭시탭의 경우 타이머 실행후 외부에서 쿡나비 강제 종료하여도
		// 이전 상태를 기억하고 있으나 일루미너스의 경우 타이머가 실행되면 
		// 이전 상태를 기억 못함
		
	}
}
